package com.itbupt.domain.rebate.repository;

import com.itbupt.domain.rebate.model.aggregate.BehaviorRebateAggregate;
import com.itbupt.domain.rebate.model.entity.BehaviorRebateOrderEntity;
import com.itbupt.domain.rebate.model.valobj.BehaviorTypeVO;
import com.itbupt.domain.rebate.model.valobj.DailyBehaviorRebateVO;

import java.util.List;

/**
 * @Author dingchang
 * @Date 2025/4/9 14:57
 * @Description: 行为返利服务仓储接口
 */
public interface IBehaviorRebateRepository {

    /**
     * 查询行为返利配置列表
     * @param behaviorTypeVO 行为类型
     * @return 列表
     */
    List<DailyBehaviorRebateVO> queryDailyBehaviorRebateConfig(BehaviorTypeVO behaviorTypeVO);

    /**
     * 存储聚合对象
     * @param userId
     * @param behaviorRebateAggregates
     */
    void saveUserRebateRecord(String userId, List<BehaviorRebateAggregate> behaviorRebateAggregates);

    // 查看今天是否已经签到
    List<BehaviorRebateOrderEntity> queryOrderByOutBusinessNo(String userId, String outBusinessNo);

}
